package com.kws.system.domain;


import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * (Merchant)表实体类
 *
 * @author yxy
 * @since 2024-11-01 09:43:20
 */
@Data
@ApiModel("$tableInfo.comment")
@TableName(value = "tb_merchant")
public class TbMerchant implements Serializable {
    private static final long serialVersionUID = 290157467086024046L;

    @TableId(type = IdType.AUTO)
    @ApiModelProperty("主键ID")
    private Long id;

    @ApiModelProperty("用户ID")
    private Long userId;


    @ApiModelProperty("商户类型：0-个体，1-企业")
    private String commercialType;

    @ApiModelProperty("用户角色：0-专家，1-总包服务商，2-设备厂家，3-施工单位，4-运维单位")
    private String userRole;

    @ApiModelProperty("联系人")
    private String contactPerson;

    @ApiModelProperty("联系电话")
    private String contactInformation;

    @ApiModelProperty("法人姓名")
    private String corporateName;

    @ApiModelProperty("证件类型：0-身份证")
    private String documentType;

    @ApiModelProperty("证件号码")
    private String documentNumber;

    @ApiModelProperty("证件图片1地址")
    private String documentPicture1Url;

    @ApiModelProperty("证件图片2地址")
    private String documentPicture2Url;

    @ApiModelProperty("营业执照地址")
    private String businessLicenseUrl;

    @ApiModelProperty("商家认证类型：0-千瓦时自营，1-品牌自营")
    private String merchantCertificationType;

    @ApiModelProperty("资质证书1")
    private String aptitudeCertificate1Url;

    @ApiModelProperty("资质证书2")
    private String aptitudeCertificate2Url;

    @ApiModelProperty("资质证书3")
    private String aptitudeCertificate3Url;

    @ApiModelProperty("企业名称")
    private String companyName;

    @ApiModelProperty("企业地址")
    private String companyAddress;

    @ApiModelProperty("经营范围：0-技术开发，1-技术咨询，2-电子设备，3-建筑工程，4-安装维修")
    private String businessScope;

    @ApiModelProperty("税务登记证号码")
    private String registrationCertificateNumber;

    @ApiModelProperty("银行卡类型：0-借记卡，1-储蓄卡")
    private String bankCardType;

    @ApiModelProperty("开户行名称")
    private String accountBankName;

    @ApiModelProperty("银行账号")
    private String bankAccountNumber;

    @ApiModelProperty("可用状态：0-不可用，1-可用")
    private String enable;

    @ApiModelProperty("创建用户")
    private String createUser;

    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GTM+8")
    @ApiModelProperty("创建时间")
    private Date createTime;

    @ApiModelProperty("修改用户")
    private String updateUser;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GTM+8")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @ApiModelProperty("修改时间")
    private Date updateTime;

    @ApiModelProperty("状态0已通过 1已驳回 2待审核")
    private Integer status;

    @ApiModelProperty("审批0同意 1不同意")
    private Integer approval;

    @ApiModelProperty("审批意见")
    private String approvalOpinion;

    @ApiModelProperty("商家logo")
    private String logo;

    @ApiModelProperty("商家描述")
    private String merchantRemark;

    @ApiModelProperty("企业地址纬度")
    private String companyAddressLat;

    @ApiModelProperty("企业地址经度")
    private String companyAddressLng;

    @ApiModelProperty(value = "开户成功凭证地址")
    private String accountOpeningCertificateUrl;

    @ApiModelProperty(value = "企业电话")
    private String companyPhone;

    @ApiModelProperty(value = "组织机构代码")
    private String companyCode;
}
